package com.bw.produce.service;



import com.baomidou.mybatisplus.extension.service.IService;
import com.bw.produce.domain.Type;
import com.bw.produce.domain.dto.TypeDTO;
import com.bw.produce.domain.dto.TypeRequest;
import com.bw.produce.domain.vo.TypeVO;
import com.bw.produce.query.TypeQueryObject;
import org.springframework.beans.BeanUtils;

import java.util.List;

/**
 * @author lemon
 * @date 2024/11/15 20:46
 **/
public interface ITypeService extends IService<Type> {

    /**
     * 查询列表
     * @return 结果集
     * @param queryParams 查询参数
     */
    List<TypeVO> selectTypeList(TypeQueryObject queryParams);


    /**
     * 修改或者删除
     * @param typeRequest 类型
     */
    void saveOrUpdate(TypeRequest typeRequest);

    /**
     * 删除
     * @param typeId 品牌id
     */
    void deleteTypeById(Long typeId);


    /**
     * 获取单个
     * @param typeId 品牌id
     * @return id
     */
    Type getInfo(Long typeId);


    /**
     * 查询分类及其属性
     * @return 结果集
     */
    List<TypeDTO> typeWithProperty();

    /**
     * 获取所有的商品类型
     * @return 类型集合
     */
    List<Type> allType();
}
